<?php
    class myClass {
        public     $Name                                  = NULL ;
        private    $BaseDamage                            = 5 ;
        private    $DamageModiferPerLevel                 = .25;
        private    $BaseDetection                         = 0;
        private    $BaseDefense                           = 10;
        private    $BaseHide                              = 0.1;
        private    $BaseAbilityPoints                     = 6;
        private    $AbilityPointsPerLevel                 = 2;
        private    $AbilityPointBounusEveryXLevels        = 4;
        private    $AbilityPointBonusValue                = 3;
        private    $InventorySlotPerLevel                 = .10 ;
        private    $InventorySlotBonusEveryXLevels        = 3;
        private    $InventorySlotBonusValue               = 5;

        function GetCurrentDamage(){
            $WeaponDamage = 0;
            $BaseCurrentDamage = $this->Damage + ($this->Level * $this->$DamageModiferPerLevel);
            foreach ($this->Inventory->Equiped as $ArmedItem)
                $WeaponDamage += $ArmedItem->BonusDamage; 
            return $WeaponDamanged + $BaseCurrentDamage;
        }
        function GetInventorySlotIncrease($NewClassLevel){
            if($NewClassLevel / $this->InventorySlotBonusEveryXLevels)
                return $this->InventorySlotPerLevel + $this->InventorySlotBonusValue;
            return $this->InventorySlotPerLevel;
        }
        function GetAbilityPointIncrease($NewClassLevel){
            if($NewClassLevel / $this->AbilityPointBounusEveryXLevels)
                return $this->AbilityPointsPerLevel + $this->AbilityPointBonusValue;
            return $this->AbilityPointsPerLevel;
        }
        ///* TODO */function GetFeatPointIncrease(){}

        function ExperinceNeededForNextLevel($NewClassLevel){
            $ExperinceNeeded =  round((pow(($NewClassLevel - .5),2)+.25)*500);  // Level minus .5 times itself plus .25 times 500
        }



    }
?>
    2ldd